草庐IT

Java Applet 不缓存

全部标签

java - 事务回滚问题中的 infinispan 缓存对象更新

我们希望在订单管理系统中使用infinispan作为内存数据库。在那里我们需要做以下类型的操作。这里的现金账户缓存包含从数据库加载的客户缓存账户。假设现金账户1的初始余额为1000,现金账户2为2000。我们在jboss7.1应用程序服务器的事务中更新两个现金账户。我们期望的结果是两个现金账户的余额保持不变,因为此操作发生在交易中。但不幸的是,即使在事务回滚之后,我们也可以在缓存中看到更新对象。实用我们检查的是当我们将一个对象添加到事务中的缓存时,当事务回滚时它将从缓存中删除。但对现有对象的修改保持原样。这只是我们想要做的一个例子。实际的涉及在单个事务中更新多个对象。能否请您告诉我们可

java - Java 中的 LRU 缓存实现

我看过下面的代码,我认为addElement方法的实现中有一个无用的while循环。它不应该碰巧有比size+1更多的元素,因为已经有一个写锁。那么为什么addElement方法要删除元素直到它得到这个条件是的while(concurrentLinkedQueue.size()>=maxSize)任何关于此的指示都会很棒。这里是实现:publicclassLRUCache{privateConcurrentLinkedQueueconcurrentLinkedQueue=newConcurrentLinkedQueue();privateConcurrentHashMapconcurr

java - 缓存不一致 - 实体并不总是保留在缓存的集合中

我在将Validation实例添加到Step实例的集合中时遇到问题。声明如下:步骤类:@Entity@Table@Cacheable@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)publicclassStepextendsAbstractEntityimplementsValidatableStep{@OneToMany(fetch=FetchType.LAZY,cascade=CascadeType.ALL,orphanRemoval=true)@JoinColumn(name="step_id",nullable=false)@C

java - Hibernate 二级缓存和数据库模式中的 ON DELETE CASCADE

我们的Java应用程序有大约100个映射到数据库(SQLServer或MySQL)的类。我们使用Hibernate作为我们的ORM(带有XML映射文件)。我们在数据库模式中指定了FOREIGNKEY约束。我们的大多数FOREIGNKEY约束还指定了ONDELETECASCADE。我们最近开始启用Hibernate二级缓存(针对流行的实体和集合)以缓解一些性能问题。自从我们启用二级缓存后,性能得到了提升。但是,我们也开始遇到ObjectNotFoundExceptions。似乎ObjectNotFoundExceptions正在发生,因为数据库正在删除Hibernate下面的表行。例如,

java - 需要澄清 hibernate 二级缓存

我需要对Hibernate二级缓存进行一些说明。hibernate二级缓存是如何工作的?它是否从在JavaEE环境中启动的服务器上的实体类中具有@Cacheable注释(相对于hibernate注释)的表中加载所有数据?当这些表有更新时,缓存是否会同步?如何同步?最后一个问题是,当我感兴趣的某个表发生更新时,有什么方法可以让我的DAO代码得到通知吗?(寻找任何可以通知表格更新的监听器)。 最佳答案 hibernate二级缓存是如何工作的?当你的实体被标记为可缓存时,如果你配置了二级缓存,那么hibernate会在第一次读取后将实体缓

java - Jetty 有请求缓存吗?

我有一些测试运行几个jettyservlet并从其他线程向它们发送请求。我经常看到,一旦servlet启动,它们甚至在其他线程启动之前就收到有效请求,就好像请求被缓存在某个地方并在jetty启动时重新读取一样。可能吗?如果是这样,如何禁用它? 最佳答案 Jetty没有请求缓存。 关于java-Jetty有请求缓存吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/14014788

java - 当一个 Hibernate 实例无法到达二级缓存时会发生什么?

假设我有两个服务,每个服务都使用相同的二级缓存运行相同的Hibernate应用程序。现在假设其中一个服务无法连接到二级缓存(有人设置了阻止访问缓存集群的防火墙规则)。该服务器之后如何工作?服务器之间如何保持数据一致性? 最佳答案 需要进行实验。但我敢打赌,您得到的是遭受通信失败的Hibernate操作的直接异常,这与数据库不可用时发生的情况没有太大区别。 关于java-当一个Hibernate实例无法到达二级缓存时会发生什么?,我们在StackOverflow上找到一个类似的问题:

java - 一个套接字,多个http请求,不同的主机头但服务器返回缓存的主机头

我正在使用供应商产品的自定义servlet引擎。我们的服务器前面有不同的代理,具有不同的主机名。假设主机名为host1.localhost.com和host2.localhost.com。我们有以下servletpublicclassMyServlet{publicvoiddoGet(...){response.getOutputStream.write(request.getServerName().getBytes())}}我们遇到了一个问题,有时如果我们发出请求host1.localhost.com/my/servlet我们实际上看到了host2.localhost.com/my

java - JDK 1.6及以上版本Integer类的缓存机制改变有什么好处?

我发现缓存机制在jdk1.6或以上的jdk版本中得到了改进。在jdk1.5中Integer中的缓存数组是固定的,参见staticfinalIntegercache[]=newInteger[-(-128)+127+1];在jdk1.6或以上版本中,名为getAndRemoveCacheProperties的方法和一个IntegerCache.high属性已添加到Integer类,喜欢,//java.lang.Integer.IntegerCache.high属性的值(在VM初始化期间获得)privatestaticStringintegerCacheHighPropValue;stat

java - Hibernate引入二级缓存如何解决N+1问题?

在performancesection的Hibernate文档指出:AcompletelydifferentapproachtoproblemswithN+1selectsistousethesecond-levelcache.我不明白它如何解决问题。现实世界的例子和解释可能是什么? 最佳答案 很简单。假设您有以下域模型:@Entity(name="Post")publicclassPost{@Id@GeneratedValue(strategy=GenerationType.AUTO)privateLongid;privateSt